/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */


/**
 *
 * @author JAVA
 */
//import java.util.*;
import gestorvideoclub.*;
import java.sql.*;
import java.util.logging.Level;
import java.util.logging.Logger;
//import sun.misc.Cleaner;
//import java.util.ArrayList;


/* Subclase de Usuario hereda de él*/

public class Cliente_bypass_ extends Usuario {

//
//    private double saldo;
//    private int NumProdAlqActual = 0;
//    private static int NumMaxProducto;
//    private Date FechaNacimiento;
//
//    private Franquicia franquicia;
//
//    static {
//        NumMaxProducto = 5;
//    }
////Constructor por defecto
//
//    public Cliente() {
//    }
////Constructor por parametros
//
//    public Cliente(String nombre, String apellidos, String DNI, String contraseña, String telefono,
//            double saldo, Date FechaNacimiento) {
//
//        super(nombre, apellidos, DNI, contraseña, telefono);
//        this.saldo = saldo;
//        this.NumProdAlqActual = 0;
//        this.FechaNacimiento= new Date(2011, 4, 1);//Esto hay que cambiarlo
//    }
///* Get y Set*/
//
//    public Date getFechaNacimiento() {
//        return FechaNacimiento;
//    }
//
//    public void setFechaNacimiento(Date FechaNacimiento) {
//        this.FechaNacimiento = FechaNacimiento;
//    }
//
//
////    public Date getFecha() {
////        return this.fecha;
////    }
////
////    public void setFecha(Date fecha) {
////        this.fecha = fecha;
////    }
//
//
//    public static int getNumMaxProducto() {
//        return NumMaxProducto;
//    }
//
//    public static void setNumMaxProducto(int NumMaxProducto) {
//        Cliente.NumMaxProducto = NumMaxProducto;
//    }
//
//    public int getNumProdAlqActual() {
//        return NumProdAlqActual;
//    }
//
//    public void setNumProdAlqActual(int NumProdAlqActual) {
//        this.NumProdAlqActual = NumProdAlqActual;
//    }
//
//    public double getSaldo() {
//        return saldo;
//    }
//
//    public void setSaldo(double saldo) {
//        this.saldo = saldo;
//    }
//
//    @Override /*Sobreescribir dar alta de usuario*/
//
//    /** Dar de alta al Cliente*/
//
//
//    public void altaUsuario() {
//        String nom;
//        String estadoU;
//        String apel, dni, pin, tel;
//
//
//
//        System.out.println("Nombre del Cliente ");
//        nom = introduceDatos.introduceString();
//        this.setNombre(nom);
//
//        System.out.println("Apellidos del Cliente ");
//        apel = introduceDatos.introduceString();
//        this.setApellidos(apel);
//
//        System.out.println("DNI del Cliente ");
//        dni = introduceDatos.introduceString();
//        this.setDNI(dni);
//
//        System.out.println("Contraseña Cliente ");
//        pin = introduceDatos.introduceString();
//        this.setContraseña(pin);
//
//        System.out.println("Telefono Cliente ");
//        tel = introduceDatos.introduceString();
//        this.setTelefono(tel);
//
//        System.out.println("Saldo Inicial: ");
//        saldo = introduceDatos.introduceFloat();
//        this.setSaldo(saldo);
//
//        System.out.println("Fecha Nacimiento(dd-mm-aaaa): ");
//        String fechaAux = introduceDatos.introduceString();
//        try {
//            try {
//                Class.forName("com.mysql.jdbc.Driver").newInstance();
//            } catch (InstantiationException ex) {
//                Logger.getLogger(Cliente.class.getName()).log(Level.SEVERE, null, ex);
//            } catch (IllegalAccessException ex) {
//                Logger.getLogger(Cliente.class.getName()).log(Level.SEVERE, null, ex);
//            }
//        } catch (ClassNotFoundException ex) {
//            Logger.getLogger(Cliente.class.getName()).log(Level.SEVERE, null, ex);
//        }
//        try {
//            Connection con = DriverManager.getConnection("jdbc:mysql://192.168.1.12:3306/gestorvideoclub", "Aula2pc02", "Aula2pc02");
//        } catch (SQLException ex) {
//            Logger.getLogger(Cliente.class.getName()).log(Level.SEVERE, null, ex);
//        }
//
//
//    }
///* Sobreescribir la presentacion de cliente*/
//
//    @Override
//    public String toString() {
//        return this.getNombre() + " " + this.getApellidos() + " " + "DNI " + this.getDNI() + "\nTelefono " + this.getTelefono() + "\nFecha de nacimiento: " + this.getFechaNacimiento()
//                + "\nSaldo = " + saldo + "\nNúmero Producto/s alquilado actualmente = "
//                + NumProdAlqActual + "\nNumero Maximo de producto para alquilar = " + NumMaxProducto
//                + "\nEstado cliente: " + this.getEstadoUsuario() + "\n";
//    }
///** Metodo para la consulta del cliente en cajero*/
//
//    public void ConsultaClienteCajero() {
//
//        System.out.println(this);
//
//
//    }
///** Hace consultas del cliente*/
//
//    public void ConsultaClienteTienda() {
//
//        String dni;
//        System.out.println("Introduzca el DNI:");
//        dni = introduceDatos.introduceString();
//
//        //pte del acceso a la bbdd
//
//    }
///** Hace modificaciones sobre los atributos del cliente:nombre, apellidos, DNI,
// * Fecha de nacimiento, tlfno, ...
// */
//    public void modificacionCliente() {
//        int opcion;
//        String nom, apell, dni, fena, tlfno, con;
//        EstadoUsuario estusu;
//        boolean salir = false;
//        do {
//            System.out.println("Seleccione la opcion que desea modificar: ");
//            System.out.println("------------------------------------- ");
//            System.out.println("1.- Nombre ");
//            System.out.println("2.- Apellidos ");
//            System.out.println("3.- DNI ");
//            System.out.println("4.- Fecha de Nacimiento ");
//            System.out.println("5.- Telefono ");
//            System.out.println("6.- Contraseña ");
//            System.out.println("7.- Estado del Usuario ");
//            System.out.println("8.- Salir");
//            System.out.println("\n");
//            opcion = introduceDatos.introduceEntero();
//            System.out.println();
//
//
//
//            switch (opcion)//accedera los usuarios
//            {
//                case 1:
//                    System.out.println("Introduzca el nombre a modificar: ");
//                    nom = introduceDatos.introduceString();
//                    this.setNombre(nom);
//                    System.out.println();
//                    System.out.println(this);
//                    break;
//                case 2:
//                    System.out.println("Introduzca el apellido q desea modificar: ");
//                    apell = introduceDatos.introduceString();
//                    this.setApellidos(apell);
//                    System.out.println();
//                    System.out.println(this);
//                    break;
//                case 3:
//                    System.out.println("Introduzca el DNI a modificar: ");
//                    dni = introduceDatos.introduceString();
//                    this.setDNI(dni);
//                    System.out.println();
//                    System.out.println(this);
//                    break;
//                case 4:
//                    System.out.println("Introduzca la Fecha de Nacimiento a modificar: ");
//                    fena = introduceDatos.introduceString();
//                    this.setFechaNacimiento(FechaNacimiento);
//                    System.out.println();
//                    System.out.println(this);
//                    break;
//                case 5:
//                    System.out.println("Introduzca el telefono a modificar: ");
//                    tlfno = introduceDatos.introduceString();
//                    this.setTelefono(tlfno);
//                    System.out.println();
//                    System.out.println(this);
//                    break;
//                case 6:
//                    System.out.println("Introduzca la contraseña a modificar: ");
//                    con = introduceDatos.introduceString();
//                    this.setContraseña(con);
//                    System.out.println();
//                    System.out.println(this);
//                    break;
//                //Sólo accedera el administrador/jefe
//                case 7:
//
//                    System.out.println("Introduzca el Estado del usuario a modificar: ");
//                    estusu = introduceDatos.introduceString();
//                    this.setEstadoUsuario(EstadoUsuario.Alta); // TODO MIGUEL cambiar esto
//                    System.out.println();
//                    System.out.println(this);
//
//                    //System.out.println("Introduzca el Estado del usuario a modificar: ");
//                    recorreEstadoUsuario();
//                    int op;
//                    rellenaArrayEstadoUsuario();
//                    int pos;
//                    op= aestusu.length;
//
//
//                    String nuevoEstado = null;
//                    int i = 1;
//                    for (EstadoUsuario eu : EstadoUsuario.values()) {
//                        System.out.println(i + ". " + eu);
//                        i++;
//                    }
//                    System.out.println("Introduzca el nuevo estado: ");
//                    int pos = introduceDatos.introduceEntero();
//                    if (pos == 1) {
//                        nuevoEstado = "Alta";
//                    } else if (pos == 2) {
//                        nuevoEstado = "Baja";
//                    } else if (pos == 3) {
//                        nuevoEstado = "Bloqueado";
//                    } else {
//                        System.out.println("Opción incorrecta.");
//                    }
//                    this.setEstadoUsuario(EstadoUsuario.valueOf(nuevoEstado));
//                    System.out.println(this.getEstadoUsuario());
//
//                    break;
//                case 8:
//                    System.out.println("Hasta pronto");
//                    salir = true;
//                    break;
//                default:
//                    System.out.println("Opción incorrecta");
//            }
//
//
//            }
//
//        } while (!salir);
//
//
//        } while (!salir);
//
//
//    }
//
//
//    public void añadirSaldo(double sal) {
//
//        // double nuevosal;
//
//        if (sal < 0) {
//
//    public void rellenaArrayEstadoUsuario(){
//         int cont=0;
//         for(EstadoUsuario g: EstadoUsuario.values())
//         {
//             aestusu[cont]=g;
//         }
//    }
//public void añadirSaldo(double sal){
//
//       // double nuevosal;
//
//        if (sal<0){
//
//
//
//    public void añadirSaldo(double sal) {
//
//
//        System.out.println("Introduzca el saldo q desea aumentar ");
//        if (sal < 0) {
//
//            System.out.println("Error: Cantidad negativa ");
//            return;
//        }
//        System.out.println(this);
//        this.saldo += sal;
//
//
//        System.out.println("Su actual saldo son  " + this.saldo + " euros.");
//
//    }
//
//        System.out.println("Su actual saldo son  " + this.saldo + " euros.");
//
//    }
//
//    public void retirarSaldo(double sal) {
//
//
//        double aux=this.getSaldo() - sal;
//        this.setSaldo(aux);
//        System.out.println("\n");
//        System.out.println(this);
//        System.out.println("Saldo actual \n" + aux);
//    }
//
//    public void consultaProdAlquilado(){
//
//
//
//
//
//
//    }
//
//    public void consultaReservaProd(){
//
//
//    }
//
}

